--- /dev/null
+Description: Allow compilation on GLES platforms
+From a89d6fa9a70054c7bd1718b58996b290ba06ee7f Mon Sep 17 00:00:00 2001
+From: stefan.bruens@rwth-aachen.de
+Date: Tue, 9 Jun 2020 17:34:39 +0200
+Subject: [PATCH] Remove duplicate check for QOpenGLFunctions_3_2_Core*
+
+The return value is already checked in QVTKRenderWindowAdapter::blit(),
+no need to do it twice.
+---
+ GUISupport/Qt/QVTKOpenGLNativeWidget.cxx | 20 ++++-------
+ GUISupport/Qt/QVTKOpenGLWindow.cxx | 42 ++++++++++--------------
+ 2 files changed, 25 insertions(+), 37 deletions(-)
+
+Index: vtk9-9.0.1+dfsg1/GUISupport/Qt/QVTKOpenGLNativeWidget.cxx
+===================================================================
+--- vtk9-9.0.1+dfsg1.orig/GUISupport/Qt/QVTKOpenGLNativeWidget.cxx
++++ vtk9-9.0.1+dfsg1/GUISupport/Qt/QVTKOpenGLNativeWidget.cxx
+@@ -19,7 +19,6 @@
+ #include <QOpenGLContext>
+ #include <QOpenGLFramebufferObject>
+ #include <QOpenGLFunctions>
+-#include <QOpenGLFunctions_3_2_Core>
+ #include <QOpenGLTexture>
+ #include <QPointer>
+ #include <QScopedValueRollback>
+@@ -237,14 +236,10 @@ void QVTKOpenGLNativeWidget::paintGL()
+ // before proceeding with blit-ing.
+ this->makeCurrent();
+
+- QOpenGLFunctions_3_2_Core* f =
+- QOpenGLContext::currentContext()->versionFunctions<QOpenGLFunctions_3_2_Core>();
+- if (f)
+- {
+- const QSize deviceSize = this->size() * this->devicePixelRatioF();
+- this->RenderWindowAdapter->blit(
+- this->defaultFramebufferObject(), GL_COLOR_ATTACHMENT0, QRect(QPoint(0, 0), deviceSize));
+- }
++ const QSize deviceSize = this->size() * this->devicePixelRatioF();
++ this->RenderWindowAdapter->blit(
++ this->defaultFramebufferObject(), GL_COLOR_ATTACHMENT0, QRect(QPoint(0, 0), deviceSize));
++
+ }
+ else
+ {
+Index: vtk9-9.0.1+dfsg1/GUISupport/Qt/QVTKOpenGLWindow.cxx
+===================================================================
+--- vtk9-9.0.1+dfsg1.orig/GUISupport/Qt/QVTKOpenGLWindow.cxx
++++ vtk9-9.0.1+dfsg1/GUISupport/Qt/QVTKOpenGLWindow.cxx
+@@ -19,7 +19,6 @@
+ #include <QOpenGLContext>
+ #include <QOpenGLFramebufferObject>
+ #include <QOpenGLFunctions>
+-#include <QOpenGLFunctions_3_2_Core>
+ #include <QOpenGLTexture>
+ #include <QPointer>
+ #include <QScopedValueRollback>
+@@ -230,25 +229,20 @@ void QVTKOpenGLWindow::paintGL()
+ // before proceeding with blit-ing.
+ this->makeCurrent();
+
+- QOpenGLFunctions_3_2_Core* f =
+- QOpenGLContext::currentContext()->versionFunctions<QOpenGLFunctions_3_2_Core>();
+- if (f)
++ const QSize deviceSize = this->size() * this->devicePixelRatioF();
++ const auto fmt = this->context()->format();
++ if (fmt.stereo() && this->RenderWindow->GetStereoRender() &&
++ this->RenderWindow->GetStereoType() == VTK_STEREO_CRYSTAL_EYES)
+ {
+- const QSize deviceSize = this->size() * this->devicePixelRatioF();
+- const auto fmt = this->context()->format();
+- if (fmt.stereo() && this->RenderWindow->GetStereoRender() &&
+- this->RenderWindow->GetStereoType() == VTK_STEREO_CRYSTAL_EYES)
+- {
+- this->RenderWindowAdapter->blitLeftEye(
+- this->defaultFramebufferObject(), GL_BACK_LEFT, QRect(QPoint(0, 0), deviceSize));
+- this->RenderWindowAdapter->blitRightEye(
+- this->defaultFramebufferObject(), GL_BACK_RIGHT, QRect(QPoint(0, 0), deviceSize));
+- }
+- else
+- {
+- this->RenderWindowAdapter->blit(
+- this->defaultFramebufferObject(), GL_BACK, QRect(QPoint(0, 0), deviceSize));
+- }
++ this->RenderWindowAdapter->blitLeftEye(
++ this->defaultFramebufferObject(), GL_BACK_LEFT, QRect(QPoint(0, 0), deviceSize));
++ this->RenderWindowAdapter->blitRightEye(
++ this->defaultFramebufferObject(), GL_BACK_RIGHT, QRect(QPoint(0, 0), deviceSize));
++ }
++ else
++ {
++ this->RenderWindowAdapter->blit(
++ this->defaultFramebufferObject(), GL_BACK, QRect(QPoint(0, 0), deviceSize));
+ }
+ }
+ else